$namespace: 'ecology' !default;
$block-sel: '-' !default;
$elem-sel: '__' !default;
$mod-sel: '--' !default;

// block

@mixin b($block) {
  $B: #{$namespace+$block-sel+$block};
  .#{$B} {
    @content;
  }
}

// elements

@mixin e($el) {
  $selector: &;
  @at-root {
    #{$selector+$elem-sel+$el} {
      @content;
    }
  }
}

// modify

@mixin m($m) {
  $selector: &;
  @at-root {
    #{$selector+$mod-sel+$m} {
      @content;
    }
  }
}